Back to Repo


## Setup, Load Libraries & Report Versions
knitr::opts_chunk$set(echo = TRUE)

## Load Libraries ------------------- 
## IMPORTANT!
## Please check the paths and files in the file "load_packages_and_functions.R" before running this!
## All .R files must be in the same folder, specified below in 'lib_folder'
lib_folder = "~/ad-omics/ricardo/MyRepo/structuralvariation/R_Library/"
source(paste0(lib_folder,"load_packages_and_functions.R"))

createDT <- function(DF, caption="", scrollY=500){
  data <- DT::datatable(DF, caption=caption,
    extensions = 'Buttons',
    class = "display",
    callback = JS("return table;"),
    filter = c("none", "bottom", "top"), 
    escape = TRUE,
    style = "default", width = NULL, height = NULL, elementId = NULL,
    fillContainer = getOption("DT.fillContainer", NULL),
    autoHideNavigation = getOption("DT.autoHideNavigation", NULL),
    selection = c("multiple", "single", "none"),
    plugins = NULL, editable = FALSE,
    options = list( dom = 'Bfrtip', 
                    buttons = c('copy', 'csv', 'excel', 'pdf', 'print'), 
                    scrollY = scrollY, scrollX=T, scrollCollapse = T, paging = T,  
                    columnDefs = list(list(className = 'dt-center', targets = "_all"))
    )
  ) 
  return(data)
}

Selecting samples

Structural Variations (SVs) are increasingly recognized for their importance in genomics. Short-read sequencing is the most widely-used approach for genotyping large numbers of samples for SVs but suffers from relatively poor accuracy. SVCollector, is an open-source method that optimally selects samples to maximize variant discovery and validation using long read resequenc- ing or PCR-based validation.

SVCollector has two major ranking modes: topN, and greedy. For the topN mode, it picks samples with the largest number of SVs irrespective if the SVs are shared with other samples. For the greedy mode, it finds a set of samples that collectively contain the largest number of distinct variants. Solving this exactly is computationally intractable as it is a version of the well-known NP-hard set cover problem. Consequently, it uses a greedy approximation thatstarts with the sample with the largest number of variants, and then iteratively picks the sample containing the largest number variants not yet included in the set. It also has a random mode that mimics an arbitrary selection process, and is helpful for evaluating the diversity of the topN or greedy approaches. For each mode, SVCollector reports the rank, sample name, its unique contribution of SVs, the cumulative sum of SVs up to the chosen sample, and the cumulative percentage compared to the total number of SVs in the input VCF file.

root_dir = "~/ad-omics/ricardo/"
svcollector_path = paste0(root_dir,"MyApps/SVCollector/Debug/SVCollector")
svcollector_script = paste0(root_dir,"MyApps/SVCollector/SVCollector.sh")

ROSMAP_path = paste0(root_dir,"ROSMAP/")
gt_merged_ROSMAP = paste0(ROSMAP_path,"05_MergedSamples/fromSMOOVE/samples_merged_DEL.Final.vcf.gz")

raw_merged_ROSMAP = paste0(ROSMAP_path,"03_MergedCalls/SURVIVOR/population/samples_merged_DEL.vcf")


ROSMAP_Ancestry = read.csv(paste0(ROSMAP_path,"01_GeneticPC/pca.ancestry_prediction.csv"), header = T, stringsAsFactors = F, check.names = F, comment.char = "")
ROSMAP_Euro = ROSMAP_Ancestry[ROSMAP_Ancestry$EUR==1,]

MSBB_path = paste0(root_dir,"MSinai/")
gt_merged_MSBB = paste0(MSBB_path,"05_MergedSamples/fromSMOOVE/samples_merged_DEL.Final.vcf.gz")

raw_merged_MSBB = paste0(MSBB_path,"03_MergedCalls/SURVIVOR/population/samples_merged_DEL.vcf")


MSBB_Ancestry = read.csv(paste0(MSBB_path,"01_GeneticPC/pca.ancestry_prediction.csv"), header = T, stringsAsFactors = F, check.names = F, comment.char = "")
MSBB_Euro = MSBB_Ancestry[MSBB_Ancestry$EUR==1,]

# Outputs
work_dir = paste0(root_dir,"AMP_AD/LongReadsValidation.FINAL/")
system(paste0("mkdir -p ",work_dir))

gt_vcf_ROSMAP = paste0(work_dir,"ROSMAP.gt.vcf")
raw_vcf_ROSMAP = paste0(work_dir,"ROSMAP.raw.vcf")
gt_vcf_MSBB = paste0(work_dir,"MSBB.gt.vcf")
raw_vcf_MSBB = paste0(work_dir,"MSBB.raw.vcf")
ROSMAP_samples = system(paste0("ml bcftools; bcftools query -l ", gt_merged_ROSMAP), intern = T)
ROSMAP_samples_to_use = unique(ROSMAP_Euro[ROSMAP_Euro$`#sample`%in%ROSMAP_samples,"#sample"])

MSBB_samples = system(paste0("ml bcftools; bcftools query -l ", gt_merged_MSBB), intern = T)
MSBB_samples_to_use = unique(MSBB_Euro[MSBB_Euro$`#sample`%in%MSBB_samples,"#sample"])
sysout = system(paste0("ml bcftools; bcftools view --force-samples -s ", paste0(ROSMAP_samples_to_use, collapse = ","), " ", raw_merged_ROSMAP, " | bcftools sort -o ", raw_vcf_ROSMAP), intern = T)
sysout = system(paste0("ml bcftools; bcftools view --force-samples -s ", paste0(ROSMAP_samples_to_use, collapse = ","), " ", gt_merged_ROSMAP, " | bcftools sort -o ", gt_vcf_ROSMAP), intern = T)

sysout = system(paste0("ml bcftools; bcftools view --force-samples -s ", paste0(MSBB_samples_to_use, collapse = ","), " ", raw_merged_MSBB, " | bcftools sort -o ", raw_vcf_MSBB), intern = T)
sysout = system(paste0("ml bcftools; bcftools view --force-samples -s ", paste0(MSBB_samples_to_use, collapse = ","), " ", gt_merged_MSBB, " | bcftools sort -o ", gt_vcf_MSBB), intern = T)

sysout = system(paste("ml parallel;",svcollector_script, raw_vcf_ROSMAP, length(ROSMAP_samples_to_use), work_dir), intern = T)
sysout = system(paste("ml parallel;",svcollector_script, gt_vcf_ROSMAP, length(ROSMAP_samples_to_use), work_dir), intern = T)

sysout = system(paste("ml parallel;",svcollector_script, raw_vcf_MSBB, length(MSBB_samples_to_use), work_dir), intern = T)
sysout = system(paste("ml parallel;",svcollector_script, gt_vcf_MSBB, length(MSBB_samples_to_use), work_dir), intern = T)
#raw_ROSMAP = read.vcfR(raw_vcf_ROSMAP, verbose = F)
#gt_ROSMAP = read.vcfR(gt_vcf_ROSMAP, verbose = F)

#raw_MSBB = read.vcfR(raw_vcf_MSBB, verbose = F)
#gt_MSBB = read.vcfR(gt_vcf_MSBB, verbose = F)

ROSMAP

cohort = "ROSMAP"

Samples ancestries

Getting only Europeans

a = plot_samples_ancestry(ROSMAP_samples_to_use, label="ROSMAP-EUR")

Greedy

mode = "greedy"
SVCollector_output = paste0(work_dir, cohort, ".raw.vcf.", mode)
SVCollector_results_greedy = read.table(SVCollector_output, sep="\t", header = T, check.names = F, comment.char = "", col.names = c("Sample","numSV","cumsumSV","percSV"))
SVCollector_results_greedy$Genotyped = "No"
SVCollector_output.gt = paste0(work_dir, cohort, ".gt.vcf.", mode)
SVCollector_results_greedy.gt = read.table(SVCollector_output.gt, sep="\t", header = T, check.names = F, comment.char = "", col.names = c("Sample","numSV","cumsumSV","percSV")) 
SVCollector_results_greedy.gt$Genotyped = "Yes"

#SVCollector_results_greedy = melt(rbind(SVCollector_results_greedy,SVCollector_results_greedy.gt),id.vars = c("Sample","Genotyped"))
SVCollector_results_greedy = rbind(SVCollector_results_greedy,SVCollector_results_greedy.gt)
createDT(SVCollector_results_greedy)

TopN

mode = "topN"
SVCollector_output = paste0(work_dir, cohort, ".raw.vcf.", mode)
SVCollector_results_topN = read.table(SVCollector_output, sep="\t", header = T, check.names = F, comment.char = "", col.names = c("Sample","numSV","cumsumSV","percSV"))
SVCollector_results_topN$Genotyped = "No"
SVCollector_results_topN.gt = paste0(work_dir, cohort, ".gt.vcf.", mode)
SVCollector_results_topN.gt = read.table(SVCollector_results_topN.gt, sep="\t", header = T, check.names = F, comment.char = "", col.names = c("Sample","numSV","cumsumSV","percSV")) 
SVCollector_results_topN.gt$Genotyped = "Yes"
 
SVCollector_results_topN = rbind(SVCollector_results_topN,SVCollector_results_topN.gt)
createDT(SVCollector_results_topN)
SVCollector_results_greedy$mode = "greedy"
SVCollector_results_topN$mode = "topN"
ROSMAP = rbind(SVCollector_results_greedy,
             SVCollector_results_topN)

MSBB

cohort = "MSBB"

Samples ancestries

Getting only Europeans

a = plot_samples_ancestry(MSBB_samples_to_use, label="MSBB-EUR")

Greedy

mode = "greedy"
SVCollector_output = paste0(work_dir, cohort, ".raw.vcf.", mode)
SVCollector_results_greedy = read.table(SVCollector_output, sep="\t", header = T, check.names = F, comment.char = "", col.names = c("Sample","numSV","cumsumSV","percSV"))
SVCollector_results_greedy$Genotyped = "No"
SVCollector_output.gt = paste0(work_dir, cohort, ".gt.vcf.", mode)
SVCollector_results_greedy.gt = read.table(SVCollector_output.gt, sep="\t", header = T, check.names = F, comment.char = "", col.names = c("Sample","numSV","cumsumSV","percSV")) 
SVCollector_results_greedy.gt$Genotyped = "Yes"

#SVCollector_results_greedy = melt(rbind(SVCollector_results_greedy,SVCollector_results_greedy.gt),id.vars = c("Sample","Genotyped"))
SVCollector_results_greedy = rbind(SVCollector_results_greedy,SVCollector_results_greedy.gt)
createDT(SVCollector_results_greedy)

TopN

mode = "topN"
SVCollector_output = paste0(work_dir, cohort, ".raw.vcf.", mode)
SVCollector_results_topN = read.table(SVCollector_output, sep="\t", header = T, check.names = F, comment.char = "", col.names = c("Sample","numSV","cumsumSV","percSV"))
SVCollector_results_topN$Genotyped = "No"
SVCollector_results_topN.gt = paste0(work_dir, cohort, ".gt.vcf.", mode)
SVCollector_results_topN.gt = read.table(SVCollector_results_topN.gt, sep="\t", header = T, check.names = F, comment.char = "", col.names = c("Sample","numSV","cumsumSV","percSV")) 
SVCollector_results_topN.gt$Genotyped = "Yes"
 
SVCollector_results_topN = rbind(SVCollector_results_topN,SVCollector_results_topN.gt)
createDT(SVCollector_results_topN)
SVCollector_results_greedy$mode = "greedy"
SVCollector_results_topN$mode = "topN"
MSBB = rbind(SVCollector_results_greedy,
             SVCollector_results_topN)

Merged Results (FINAL)

ROSMAP

ROSMAP_metadata = read.table(paste0(ROSMAP_path,"Data/WGS_Metadata.txt"), header = T, stringsAsFactors = F, check.names = F)
ROSMAP_Ancestry = read.csv(paste0(ROSMAP_path,"01_GeneticPC/pca.ancestry_prediction.csv"), header = T, stringsAsFactors = F, check.names = F, comment.char = "")
ROSMAP_RNASeq = read.table(paste0(ROSMAP_path,"Data/RNAseq_WGS_Metadata.txt"), header = T, stringsAsFactors = F, check.names = F)
ROSMAP_Proteins = read.csv(paste0(ROSMAP_path,"rosmap/ROSMAP_proteomics_TMT_11_18_2019/rosmap_50batch_specimen_metadata_for_batch_correction.csv"), header = T, stringsAsFactors = F, check.names = F)
ROSMAP_h3k9ac = read.table(paste0(ROSMAP_path,"rosmap/h3k9ac_design.csv"), header = T, stringsAsFactors = F, check.names = F, sep="\t")
ROSMAP_ChIPseq = read.csv(paste0(ROSMAP_path,"rosmap/ROSMAP_ChIPseq_metaData.csv"), header = T, stringsAsFactors = F, check.names = F)
ROSMAP_scRNASeq = read.table("~/ad-omics/data/amp-ad/scRNASeq/scRNAseq.id", header = T, stringsAsFactors = F, check.names = F)

top_ROSMAP = ROSMAP %>% filter(mode=="greedy" & Genotyped=="No")
top_ROSMAP$greedy_rank = match(top_ROSMAP$Sample, ROSMAP[ROSMAP$mode=="greedy" & ROSMAP$Genotyped=="No","Sample"])
top_ROSMAP$greedy_rank.gt = match(top_ROSMAP$Sample, ROSMAP[ROSMAP$mode=="greedy" & ROSMAP$Genotyped=="Yes","Sample"])
top_ROSMAP$topN_rank = match(top_ROSMAP$Sample, ROSMAP[ROSMAP$mode=="topN" & ROSMAP$Genotyped=="No","Sample"])
top_ROSMAP$topN_rank.gt = match(top_ROSMAP$Sample, ROSMAP[ROSMAP$mode=="topN" & ROSMAP$Genotyped=="Yes","Sample"])

top_ROSMAP = inner_join(top_ROSMAP, ROSMAP_metadata, by=c("Sample" = "wgs_id"))
top_ROSMAP2 = inner_join(top_ROSMAP, ROSMAP_Ancestry, by=c("Sample" = "#sample"))

MAPT_INV = system(paste0("ml bcftools; bcftools filter -r 17:43649098-44338906 ", ROSMAP_path,"05_MergedSamples/fromSMOOVE/samples_merged_INV.Final.vcf.gz" ," | bcftools view -s ", paste0(unique(top_ROSMAP2$Sample),collapse = ","), " > ", work_dir, "ROSMAP.MAPT.INV.vcf"), intern = T)
MAPT_INV = read.vcfR(paste0( work_dir, "ROSMAP.MAPT.INV.vcf" ), verbose = F)
MAPT_INV_GT = as.data.frame(gsub("(.*?):(.*)","\\1",MAPT_INV@gt[,-1]))
MAPT_INV_DF = data.frame(MAPT_INV = colSums(as.data.frame(MAPT_INV_GT == "0/1"))>0)
MAPT_INV_DF$Sample = rownames(MAPT_INV_DF)

top_ROSMAP3 = inner_join(top_ROSMAP2, MAPT_INV_DF, by="Sample")

top_ROSMAP3$RNAseq = top_ROSMAP3$Sample%in%ROSMAP_RNASeq$wgs_id
top_ROSMAP3$Proteins = top_ROSMAP3$projid%in%ROSMAP_Proteins$projid
top_ROSMAP3$h3k9ac = top_ROSMAP3$projid%in%ROSMAP_h3k9ac$ProjID
top_ROSMAP3$ChIPseq = top_ROSMAP3$projid%in%ROSMAP_ChIPseq$SampleID
top_ROSMAP3$scRNAseq = top_ROSMAP3$projid%in%ROSMAP_scRNASeq$individualID

top_ROSMAP4 = top_ROSMAP3 %>% dplyr::select(Sample, projid, RNAseq, Proteins, h3k9ac, ChIPseq, scRNAseq, MAPT_INV, greedy_rank, greedy_rank.gt, topN_rank, topN_rank.gt, study, msex, pmi, apoe_genotype, age_death, cts_mmse30, dcfdx, ad_reagan, braaksc, ceradsc, cogdx, EUR, EAS, AMR, SAS, AFR)

createDT(top_ROSMAP4)

MSBB

MSBB_metadata = read.table(paste0(MSBB_path,"Data/WGS_Metadata.txt"), header = T, stringsAsFactors = F, check.names = F)
#MSBB_IDs = read.table(paste0(MSBB_path,"msbb/AMP-AD_MSBB_WGS__sample_barcode_brainBankID..tsv"), header = T, stringsAsFactors = F, check.names = F)
MSBB_Ancestry = read.csv(paste0(MSBB_path,"01_GeneticPC/pca.ancestry_prediction.csv"), header = T, stringsAsFactors = F, check.names = F, comment.char = "")

top_MSBB = MSBB %>% filter(mode=="greedy" & Genotyped=="No")
top_MSBB$greedy_rank = match(top_MSBB$Sample, MSBB[MSBB$mode=="greedy" & MSBB$Genotyped=="No","Sample"])
top_MSBB$greedy_rank.gt = match(top_MSBB$Sample, MSBB[MSBB$mode=="greedy" & MSBB$Genotyped=="Yes","Sample"])
top_MSBB$topN_rank = match(top_MSBB$Sample, MSBB[MSBB$mode=="topN" & MSBB$Genotyped=="No","Sample"])
top_MSBB$topN_rank.gt = match(top_MSBB$Sample, MSBB[MSBB$mode=="topN" & MSBB$Genotyped=="Yes","Sample"])

top_MSBB = inner_join(top_MSBB, MSBB_metadata, by=c("Sample" = "WGS"))
top_MSBB2 = inner_join(top_MSBB, MSBB_Ancestry, by=c("Sample" = "#sample"))

MAPT_INV = system(paste0("ml bcftools; bcftools filter -r 17:43649098-44338906 ", MSBB_path,"05_MergedSamples/fromSMOOVE/samples_merged_INV.Final.vcf.gz" ," | bcftools view -s ", paste0(unique(top_MSBB2$Sample),collapse = ","), " > ", work_dir, "MSBB.MAPT.INV.vcf"), intern = T)
MAPT_INV = read.vcfR(paste0( work_dir, "MSBB.MAPT.INV.vcf" ), verbose = F)
MAPT_INV_GT = as.data.frame(gsub("(.*?):(.*)","\\1",MAPT_INV@gt[,-1]))
MAPT_INV_DF = data.frame(MAPT_INV = colSums(as.data.frame(MAPT_INV_GT == "0/1"))>0)
MAPT_INV_DF$Sample = as.numeric(rownames(MAPT_INV_DF))

top_MSBB3 = inner_join(top_MSBB2, MAPT_INV_DF, by="Sample")

top_MSBB4 = top_MSBB3 %>% dplyr::select(Sample, individualIdentifier, greedy_rank, greedy_rank.gt, topN_rank, topN_rank.gt, SEX, PMI, Apo1, Apo2, AOD, CDR, NP.1, PlaqueMean, bbscore, MAPT_INV, EUR, EAS, AMR, SAS, AFR)
createDT(top_MSBB4)

Session info

sessionInfo()
## R version 3.5.3 (2019-03-11)
## Platform: x86_64-pc-linux-gnu (64-bit)
## Running under: CentOS Linux 7 (Core)
## 
## Matrix products: default
## BLAS/LAPACK: /hpc/packages/minerva-centos7/intel/parallel_studio_xe_2019/compilers_and_libraries_2019.0.117/linux/mkl/lib/intel64_lin/libmkl_gf_lp64.so
## 
## locale:
##  [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C              
##  [3] LC_TIME=en_US.UTF-8        LC_COLLATE=en_US.UTF-8    
##  [5] LC_MONETARY=en_US.UTF-8    LC_MESSAGES=en_US.UTF-8   
##  [7] LC_PAPER=en_US.UTF-8       LC_NAME=C                 
##  [9] LC_ADDRESS=C               LC_TELEPHONE=C            
## [11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C       
## 
## attached base packages:
##  [1] splines   stats4    parallel  grid      stats     graphics  grDevices
##  [8] utils     datasets  methods   base     
## 
## other attached packages:
##  [1] RcppCNPy_0.2.10                        
##  [2] Matrix_1.2-17                          
##  [3] psycho_0.4.91                          
##  [4] cqn_1.28.1                             
##  [5] quantreg_5.38                          
##  [6] SparseM_1.77                           
##  [7] preprocessCore_1.44.0                  
##  [8] nor1mix_1.2-3                          
##  [9] mclust_5.4.3                           
## [10] gdata_2.18.0                           
## [11] zoo_1.8-5                              
## [12] qqman_0.1.4                            
## [13] gridExtra_2.3                          
## [14] wesanderson_0.3.6                      
## [15] ggrepel_0.8.1                          
## [16] rlist_0.4.6.1                          
## [17] ggupset_0.1.0                          
## [18] ggbiplot_0.55                          
## [19] boot_1.3-20                            
## [20] wiggleplotr_1.6.1                      
## [21] Gviz_1.26.5                            
## [22] edgeR_3.24.3                           
## [23] factoextra_1.0.5                       
## [24] vroom_1.0.2                            
## [25] forcats_0.4.0                          
## [26] purrr_0.3.3                            
## [27] readr_1.3.1                            
## [28] tibble_2.1.3                           
## [29] tidyverse_1.2.1                        
## [30] compare_0.2-6                          
## [31] superheat_0.1.0                        
## [32] abind_1.4-5                            
## [33] splitstackshape_1.4.8                  
## [34] vcfR_1.8.0                             
## [35] TxDb.Hsapiens.UCSC.hg19.knownGene_3.2.2
## [36] viridis_0.5.1                          
## [37] viridisLite_0.3.0                      
## [38] GenomicFeatures_1.34.8                 
## [39] AnnotationDbi_1.44.0                   
## [40] readxl_1.3.1                           
## [41] ggsignif_0.5.0                         
## [42] venn_1.7                               
## [43] rtracklayer_1.42.2                     
## [44] VennDiagram_1.6.20                     
## [45] futile.logger_1.4.3                    
## [46] UpSetR_1.4.0                           
## [47] RColorBrewer_1.1-2                     
## [48] matrixStats_0.54.0                     
## [49] flextable_0.5.6                        
## [50] ChIPseeker_1.18.0                      
## [51] gtools_3.8.1                           
## [52] peer_1.0                               
## [53] ggfortify_0.4.6                        
## [54] ggiraph_0.7.0                          
## [55] tables_0.8.8                           
## [56] Hmisc_4.2-0                            
## [57] Formula_1.2-3                          
## [58] survival_2.44-1.1                      
## [59] lattice_0.20-38                        
## [60] DT_0.6                                 
## [61] kableExtra_1.1.0                       
## [62] knitr_1.23                             
## [63] reshape2_1.4.3                         
## [64] ggsci_2.9                              
## [65] ggpubr_0.2                             
## [66] magrittr_1.5                           
## [67] cowplot_0.9.4                          
## [68] uuid_0.1-2                             
## [69] TnT_1.4.0                              
## [70] regioneR_1.14.0                        
## [71] GenomicRanges_1.34.0                   
## [72] GenomeInfoDb_1.18.2                    
## [73] variancePartition_1.12.3               
## [74] scales_1.0.0                           
## [75] foreach_1.4.4                          
## [76] limma_3.38.3                           
## [77] ggplot2_3.2.1                          
## [78] janitor_1.2.0                          
## [79] plyr_1.8.4                             
## [80] Biostrings_2.50.2                      
## [81] XVector_0.22.0                         
## [82] IRanges_2.16.0                         
## [83] S4Vectors_0.20.1                       
## [84] multtest_2.38.0                        
## [85] Biobase_2.42.0                         
## [86] BiocGenerics_0.28.0                    
## [87] stargazer_5.2.2                        
## [88] pander_0.6.3                           
## [89] stringr_1.4.0                          
## [90] dplyr_0.8.3                            
## [91] tidyr_1.0.0                            
## [92] data.table_1.12.2                      
## [93] ggplotify_0.0.3                        
## [94] sjPlot_2.8.1                           
## [95] pacman_0.5.1                           
## [96] seqUtils_0.0.0.9000                    
## [97] bsselectR_0.1.0                        
## [98] usethis_1.5.0                          
## [99] devtools_2.0.2                         
## 
## loaded via a namespace (and not attached):
##   [1] pbapply_1.4-0               haven_2.2.0                
##   [3] vctrs_0.2.1                 expm_0.999-4               
##   [5] mgcv_1.8-28                 blob_1.1.1                 
##   [7] later_1.0.0                 nloptr_1.2.1               
##   [9] DBI_1.0.0                   rstanarm_2.19.2            
##  [11] jpeg_0.1-8                  zlibbioc_1.28.0            
##  [13] MatrixModels_0.4-1          sjmisc_2.8.2               
##  [15] htmlwidgets_1.3             mvtnorm_1.0-10             
##  [17] future_1.13.0               inline_0.3.15              
##  [19] manipulate_1.0.1            pbkrtest_0.4-7             
##  [21] markdown_0.9                Rcpp_1.0.1                 
##  [23] KernSmooth_2.23-15          promises_1.1.0             
##  [25] DelayedArray_0.8.0          ggeffects_0.14.0           
##  [27] vegan_2.5-5                 pkgload_1.0.2              
##  [29] d3Network_0.5.2.1           fs_1.3.1                   
##  [31] fastmatch_1.1-0             mnormt_1.5-5               
##  [33] digest_0.6.19               png_0.1-7                  
##  [35] DOSE_3.8.2                  ggraph_1.0.2               
##  [37] pkgconfig_2.0.2             GO.db_3.7.0                
##  [39] gridBase_0.4-7              dygraphs_1.1.1.6           
##  [41] estimability_1.3            iterators_1.0.10           
##  [43] minqa_1.2.4                 lavaan_0.6-5               
##  [45] SummarizedExperiment_1.12.0 rstan_2.19.2               
##  [47] xfun_0.7                    tidyselect_0.2.5           
##  [49] performance_0.4.2           pkgbuild_1.0.3             
##  [51] rlang_0.4.2                 glue_1.3.1                 
##  [53] ensembldb_2.6.8             gdtools_0.2.1              
##  [55] modelr_0.1.5                lambda.r_1.2.3             
##  [57] emmeans_1.3.4               ggcorrplot_0.1.3           
##  [59] europepmc_0.3               bayestestR_0.4.0           
##  [61] threejs_0.3.1               httpuv_1.5.2               
##  [63] BDgraph_2.59                pinfsc50_1.1.0             
##  [65] TH.data_1.0-10              qgraph_1.6.2               
##  [67] corpcor_1.6.9               shinystan_2.5.0            
##  [69] DO.db_2.9                   webshot_0.5.1              
##  [71] jsonlite_1.6                mime_0.6                   
##  [73] bit_1.1-14                  systemfonts_0.1.1          
##  [75] gplots_3.0.1.1              Rsamtools_1.34.1           
##  [77] stringi_1.4.3               insight_0.7.1              
##  [79] processx_3.3.1              bitops_1.0-6               
##  [81] cli_1.1.0                   RSQLite_2.1.1              
##  [83] rsconnect_0.8.13            MuMIn_1.43.15              
##  [85] officer_0.3.6               rstudioapi_0.10            
##  [87] GenomicAlignments_1.18.1    nlme_3.1-137               
##  [89] qvalue_2.14.1               locfit_1.5-9.1             
##  [91] VariantAnnotation_1.28.13   listenv_0.7.0              
##  [93] miniUI_0.1.1.1              gridGraphics_0.4-1         
##  [95] sessioninfo_1.1.1           lifecycle_0.1.0            
##  [97] munsell_0.5.0               cellranger_1.1.0           
##  [99] caTools_1.17.1.2            codetools_0.2-16           
## [101] coda_0.19-2                 bayesplot_1.7.1            
## [103] htmlTable_1.13.1            triebeard_0.3.0            
## [105] rstantools_2.0.0            xtable_1.8-4               
## [107] formatR_1.6                 StanHeaders_2.19.0         
## [109] farver_1.1.0                biovizBase_1.30.1          
## [111] CompQuadForm_1.4.3          sjstats_0.17.7             
## [113] shinythemes_1.1.2           futile.options_1.0.1       
## [115] dichromat_2.0-0             cluster_2.0.7-1            
## [117] future.apply_1.2.0          zeallot_0.1.0              
## [119] prettyunits_1.0.2           lubridate_1.7.4            
## [121] ggridges_0.5.1              colorRamps_2.3             
## [123] igraph_1.2.4.1              fgsea_1.8.0                
## [125] sjlabelled_1.1.1            shinyjs_1.0                
## [127] remotes_2.0.4               lmerTest_3.1-0             
## [129] parameters_0.3.0            testthat_2.1.1             
## [131] htmltools_0.4.0             yaml_2.2.0                 
## [133] loo_2.1.0                   MCMCpack_1.4-4             
## [135] XML_3.98-1.19               foreign_0.8-71             
## [137] withr_2.1.2                 BiocParallel_1.16.6        
## [139] BayesFactor_0.9.12-4.2      bit64_0.9-7                
## [141] effectsize_0.0.1            multcomp_1.4-10            
## [143] ProtGenerics_1.14.0         GOSemSim_2.8.0             
## [145] memoise_1.1.0               evaluate_0.13              
## [147] nonnest2_0.5-2              ggm_2.3                    
## [149] permute_0.9-5               callr_3.2.0                
## [151] ps_1.3.0                    curl_3.3                   
## [153] fdrtool_1.2.15              urltools_1.7.3             
## [155] xts_0.11-2                  acepack_1.4.1              
## [157] checkmate_1.9.3             ppcor_1.1                  
## [159] blavaan_0.3-8               desc_1.2.0                 
## [161] nFactors_2.3.3.1            rjson_0.2.20               
## [163] rprojroot_1.3-2             tools_3.5.3                
## [165] sandwich_2.5-1              RCurl_1.95-4.12            
## [167] pbivnorm_0.6.0              ape_5.3                    
## [169] xml2_1.2.0                  httr_1.4.1                 
## [171] assertthat_0.2.1            rmarkdown_1.12             
## [173] globals_0.12.4              R6_2.4.0                   
## [175] AnnotationFilter_1.6.0      nnet_7.3-12                
## [177] progress_1.2.2              memuse_4.0-0               
## [179] colorspace_1.4-1            generics_0.0.2             
## [181] base64enc_0.1-3             pillar_1.4.3               
## [183] tweenr_1.0.1                calibrate_1.7.2            
## [185] rvcheck_0.1.3               GenomeInfoDbData_1.2.0     
## [187] gtable_0.3.0                rvest_0.3.5                
## [189] zip_2.0.4                   colourpicker_1.0           
## [191] psych_1.8.12                latticeExtra_0.6-28        
## [193] biomaRt_2.38.0              crosstalk_1.0.0            
## [195] doParallel_1.0.14           broom_0.5.2                
## [197] huge_1.3.2                  BSgenome_1.50.0            
## [199] backports_1.1.4             plotrix_3.7-5              
## [201] lme4_1.1-21                 enrichplot_1.2.0           
## [203] mcmc_0.9-6                  hms_0.5.3                  
## [205] ggforce_0.2.2               shiny_1.3.2                
## [207] polyclip_1.10-0             numDeriv_2016.8-1          
## [209] glasso_1.10                 DescTools_0.99.28          
## [211] lazyeval_0.2.2              whisker_0.3-2              
## [213] crayon_1.3.4                MASS_7.3-51.1              
## [215] rpart_4.1-15                compiler_3.5.3